package binary_tree.Leetcode;

import java.util.ArrayList;
import java.util.List;

/**
 *递归实现前序访问  访问结果存放在List集合中
 */
public class Num144_proOrder {
    List<Integer> ret=new ArrayList<>();

    /**
     * 传入一个二叉树的根节点，就能返回其前序遍历的根节点
     * 此处的访问根节点操作是将节点值存储在List集合中
     * @param root
     * @return
     */
    public List<Integer> preorderTraversal(TreeNode root) {
        if (root==null){
            return ret;
        }
        //访问根节点
        ret.add(root.val);
        //递归访问左子树
        preorderTraversal(root.left);
        //递归访问右子树
        preorderTraversal(root.right);
        return ret;
    }
}
